package collection;


import java.util.HashSet;
import java.util.Set;

/**
 * Set接口:
 * 1.Set接口继承自Collection接口，为不可重复、没有下标的集合、有无序的 也有 有序的
 * 2.Set接口有两个常见的实现类:
 *   1)HashSet:无序(存取不一致)、不可重复、没有下标
 *   2)LinkedHashSet:有序(存取一致)、不可重复、没有下标-----继承自HashSet
 */


public class SetDemo {
    public static void main(String[] args) {
        //创建一个集合
        //LinkedHashSet<Point> s=new LinkedHashSet<>();     //LinkedHashSet是有序的
        Set<Point> s = new HashSet<>();
        //向集合添加元素
        s.add(new Point(11,2));
        s.add(new Point(3,4));
        s.add(new Point(52,6));
        s.add(new Point(7,8));
        System.out.println(s);      //输出集合，HashSet集合是无序的
        //添加失败，因为HashSet和LinkHashSet，元素不可以重复
        //是否重复依据，equals()和HashCode（）方法来判断的
        s.add(new Point(11,2)); //添加失败
        System.out.println(s);      //[(3,4), (7,8), (52,6), (11,2)]

        boolean b = s.add(new Point(7, 8)); //false
        System.out.println(b);      //输出b的值
        System.out.println(s);


    }
}
